.flow-design {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 5px;
}

.flow-design .flow-node-container {
    display: flex;
    align-items: center;
    flex-direction: column;
}

.flow-design .flow-node-container .flow-node {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0px 15px;
}


.flow-design .flow-node-container .flow-node::before {
    position: absolute;
    width: 1px;
    height: 100%;
    background-color: #999999;
    content: "";
}

.flow-design .flow-node-container .flow-finish-node {
    position: relative;
    width: 320px;
    height: 180px;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 20;
}

.flow-design .flow-node-container .flow-finish-node::before {
    position: absolute;
    content: "";
    border-style: solid;
    border-width: 10px 7px 7px;
    border-color: #999999 transparent transparent;
    transform: translateY(-10px);
}

.flow-design .flow-node-container .flow-finish-node::after {
    position: absolute;
    width: 6px;
    height: 100%;
    background-color: var(--flame-home-content-background-color);
    content: "";
}

.flow-design .flow-node-container .flow-node-btn {
    position: relative;
    display: flex;
    justify-content: center;
    width: 120px;
    height: 38px;
    line-height: 38px;
    text-align: center;
    background-color: #fff;
    border-radius: 5px;
    border: 1px solid rgb(230, 230, 230);
    z-index: 20;
}

.flow-design .flow-node-container .flow-node-btn:hover {
    cursor: pointer;
    border: 1px solid var(--flame-primary-color);
    box-shadow: 0 0 20px 0 var(--flame-primary-color-transparent);
}

.flow-design .flow-node-container .flow-node .flow-card {
    width: 238px;
    height: 98px;
    background-color: #fff;
    border-radius: 5px;
    border: 1px solid rgb(230, 230, 230);
    z-index: 20;
}

.flow-design .flow-node-container .flow-node .flow-card::before {
    position: absolute;
    content: "";
    border-style: solid;
    border-width: 10px 7px 7px;
    border-color: #999999 transparent transparent;
    transform: translate(112px, -10px);
}

.flow-design .flow-node-container .flow-node .flow-card:hover {
    cursor: pointer;
    border: 1px solid var(--flame-primary-color);
    box-shadow: 0 0 20px 0 var(--flame-primary-color-transparent);
}

.flow-design .flow-node-container .flow-node .flow-card .flow-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 32px;
    padding: 0 7px;
    border-bottom: 1px solid rgb(230, 230, 230);
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.flow-design .flow-node-container .flow-node .flow-card .flow-card-content {
    display: flex;
    align-items: center;
    height: 65px;
    padding: 0 15px;
}

.flow-design .flow-node-container .flow-node .flow-operate {
    height: 80px;
    width: 100%;
}

.flow-design .flow-node-container .flow-node .flow-operate .flow-operate-btn-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}


.flow-design .flow-node-container .flow-node .flow-operate .flow-operate-btn-wrapper .flow-operate-btn {
    transform: translateY(-3px);
    z-index: 20;
}

.flow-design .flow-node-container .flow-branch-node {
    position: relative;
    display: flex;
    justify-content: center;
    padding-bottom: 100px;
}

.flow-design .flow-node-container .flow-branch-node:before {
    display: flex;
    justify-content: center;
    position: absolute;
    content: "";
    width: 5px;
    height: 100%;
    background-color: var(--flame-home-content-background-color);
    z-index: 10;
}

.flow-design .flow-node-container .flow-branch-node .branch-btn::before {
    position: absolute;
    top: -10px;
    content: "";
    border-style: solid;
    border-width: 10px 7px 7px;
    border-color: #999999 transparent transparent;
}



.flow-design .flow-node-container .flow-branch-node .flow-node-btn {
    position: absolute;
    display: flex;
    justify-content: center;
    width: 120px;
    height: 38px;
    line-height: 38px;
    text-align: center;
    background-color: #fff;
    border-radius: 5px;
    border: 1px solid rgb(230, 230, 230);
    z-index: 100;
}

.flow-design .flow-node-container .flow-branch-node .flow-node-btn:hover {
    cursor: pointer;
    border: 1px solid var(--flame-primary-color);
    box-shadow: 0 0 20px 0 var(--flame-primary-color-transparent);
}

.flow-design .flow-branch-node-item-wrapper {
    position: relative;
    display: flex;
    justify-content: center;
    margin-top: 20px;
}

.flow-design .flow-branch-node-item-wrapper .flow-node-container .flow-node::before {
    display: none;
}

.flow-design .flow-branch-node-item-wrapper::before {
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    background-color: #999999;
    z-index: 10;
}

.flow-design .flow-node-container .flow-branch-node .flow-branch-node-item {
    position: relative;
    padding-top: 80px;
    padding-bottom: 20px;
    border-top: 1px solid #999999;
    border-bottom: 1px solid #999999;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 15;
}

.flow-design .flow-node-container .flow-branch-node .end {
    position: absolute;
    bottom: 80px;
}

.flow-design .flow-node-container .flow-branch-node .end:before {
    position: absolute;
    content: "";
    border-style: solid;
    border-width: 7px 0px 7px 10px;
    border-color: transparent transparent transparent #999999;
    left: -10px;
    top: 11px;
}

.flow-design .flow-node-container .flow-branch-node .end:after {
    position: absolute;
    content: "";
    border-style: solid;
    border-width: 7px 10px 7px 0px;
    border-color: transparent #999999 transparent transparent;
    top: 11px;
    right: -10px;
}

.flow-design .flow-node-container .flow-branch-node .left::after {
    content: "";
    position: absolute;
    bottom: -3px;
    left: -1px;
    width: 50%;
    height: 6px;
    background-color: var(--flame-home-content-background-color);
}

.flow-design .flow-node-container .flow-branch-node .flow-branch-node-item-wrapper .left::before {
    content: "";
    position: absolute;
    top: -3px;
    left: -1px;
    width: 50%;
    height: 6px;
    background-color: var(--flame-home-content-background-color);
}


.flow-design .flow-node-container .flow-branch-node .right::after {
    content: "";
    position: absolute;
    bottom: -3px;
    right: -1px;
    width: 50%;
    height: 6px;
    background-color: var(--flame-home-content-background-color);
}

.flow-design .flow-node-container .flow-branch-node .flow-branch-node-item-wrapper .right::before {
    content: "";
    position: absolute;
    top: -3px;
    right: -1px;
    width: 50%;
    height: 6px;
    background-color: var(--flame-home-content-background-color);
}

.flow-design .flow-node-container .flow-branch-node .flow-branch-operate {
    position: absolute;
    display: flex;
    justify-content: center;
    bottom: 0;
    height: 80px;
    width: 100%;
}

.flow-design .flow-node-container .flow-branch-node .flow-branch-operate:before {
    position: absolute;
    width: 1px;
    height: 100%;
    background-color: #999999;
    content: "";
    z-index: 15;
}

.flow-design .flow-node-container .flow-branch-node .flow-branch-operate .flow-operate-btn-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}


.flow-design .flow-node-container .flow-branch-node .flow-branch-operate .flow-operate-btn-wrapper .flow-operate-btn {
    transform: translateY(-3px);
    z-index: 20;
}

.flow-design .primary {
    cursor: pointer;
    border: 1px solid var(--flame-primary-color) !important;
    box-shadow: 0 0 20px 0 var(--flame-primary-color-transparent) !important;
}

.flow-design .info {
    cursor: pointer;
    border: 1px solid rgb(24, 160, 88) !important;
    box-shadow: 0 0 20px 0 rgba(24, 160, 88, 0.1) !important;
}

.flow-design .warning {
    cursor: pointer;
    border: 1px solid rgb(240, 160, 32) !important;
    box-shadow: 0 0 20px 0 rgba(240, 160, 32, 0.1) !important;
}

.flow-design .success {
    cursor: pointer;
    border: 1px solid rgb(32, 128, 240) !important;
    box-shadow: 0 0 20px 0 rgba(32, 128, 240, 0.1) !important;
}

.flow-design .error {
    cursor: pointer;
    border: 1px solid rgb(208, 48, 80) !important;
    box-shadow: 0 0 20px 0 rgba(208, 48, 80, 0.1) !important;
}